package com.huizhan.web.model;

import javax.persistence.*;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.*;
import io.swagger.annotations.*;
import java.util.Date;

/**
 * @Description 注册属性 
 * @Author  yanluping@outlook.com
 * @Date 2020-01-09 19:15:53 
 */
@JsonIgnoreProperties({"hibernateLazyInitializer","handler"})
@Entity
@ApiModel(value =  "注册属性")
@Table ( name ="Property")
public class Property  implements Serializable {

	private static final long serialVersionUID =  7738013598874639546L;

	/**
	 * 属性ID
	 */
	@ApiModelProperty(value = "属性ID")
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
   	@Column(name = "Property_Id" )
	private Long propertyId;

	/**
	 * 注册ID
	 */
	@ApiModelProperty(value = "注册ID")
   	@Column(name = "Register_Id" )
	private Long registerId;

	/**
	 * 索引
	 */
	@ApiModelProperty(value = "索引")
   	@Column(name = "IndexNo" )
	private Long indexNo;

	/**
	 * 名称
	 */
	@ApiModelProperty(value = "名称")
   	@Column(name = "Name" )
	private String name;

	/**
	 * 英文名
	 */
	@ApiModelProperty(value = "英文名")
   	@Column(name = "EnglishName" )
	private String englishName;

	/**
	 * 选项
	 */
	@ApiModelProperty(value = "选项")
   	@Column(name = "Options" )
	private String options;

	/**
	 * 英文选项
	 */
	@ApiModelProperty(value = "英文选项")
   	@Column(name = "EnglishOption" )
	private String englishOption;

	/**
	 * 输入框名
	 */
	@ApiModelProperty(value = "输入框名")
   	@Column(name = "Input" )
	private String input;

	/**
	 * 验证规则
	 */
	@ApiModelProperty(value = "验证规则")
   	@Column(name = "Validator" )
	private String validator;

	/**
	 * 类型
	 */
	@ApiModelProperty(value = "类型")
   	@Column(name = "Type" )
	private Long type;

	/**
	 * 必填
	 */
	@ApiModelProperty(value = "必填")
   	@Column(name = "Required" )
	private Integer required;

	/**
	 * 禁用
	 */
	@ApiModelProperty(value = "禁用")
   	@Column(name = "Disabled" )
	private Integer disabled;

	/**
	 * 创建日期
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@ApiModelProperty(value = "创建日期",example = "2018-10-01 12:18:48")
   	@Column(name = "CreateDate" )
	private Date createDate;

	public Long getPropertyId() {
		return this.propertyId;
	}

	public void setPropertyId(Long propertyId) {
		this.propertyId = propertyId;
	}

	public Long getRegisterId() {
		return this.registerId;
	}

	public void setRegisterId(Long registerId) {
		this.registerId = registerId;
	}

	public Long getIndexNo() {
		return this.indexNo;
	}

	public void setIndexNo(Long indexNo) {
		this.indexNo = indexNo;
	}

	public String getName() {
		return this.name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getEnglishName() {
		return this.englishName;
	}

	public void setEnglishName(String englishName) {
		this.englishName = englishName;
	}

	public String getOptions() {
		return this.options;
	}

	public void setOptions(String options) {
		this.options = options;
	}

	public String getEnglishOption() {
		return this.englishOption;
	}

	public void setEnglishOption(String englishOption) {
		this.englishOption = englishOption;
	}

	public String getInput() {
		return this.input;
	}

	public void setInput(String input) {
		this.input = input;
	}

	public String getValidator() {
		return this.validator;
	}

	public void setValidator(String validator) {
		this.validator = validator;
	}

	public Long getType() {
		return this.type;
	}

	public void setType(Long type) {
		this.type = type;
	}

	public Integer getRequired() {
		return this.required;
	}

	public void setRequired(Integer required) {
		this.required = required;
	}

	public Integer getDisabled() {
		return this.disabled;
	}

	public void setDisabled(Integer disabled) {
		this.disabled = disabled;
	}

	public Date getCreateDate() {
		return this.createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	@Override
	public String toString() {
		return "{" +
					"propertyId='" + propertyId + '\'' +
					"registerId='" + registerId + '\'' +
					"indexNo='" + indexNo + '\'' +
					"name='" + name + '\'' +
					"englishName='" + englishName + '\'' +
					"options='" + options + '\'' +
					"englishOption='" + englishOption + '\'' +
					"input='" + input + '\'' +
					"validator='" + validator + '\'' +
					"type='" + type + '\'' +
					"required='" + required + '\'' +
					"disabled='" + disabled + '\'' +
					"createDate='" + createDate + '\'' +
				'}';
	}

}
